﻿Imports ClassLibrary1.DNI
Imports System.IO
Public Class FormAñadirusuario
    Dim Letra As New LetraDNI

    Private Sub btValida_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btValida.Click
        Dim dni As Integer
        dni = tbDNI.Text
        tbLetraDni.Text = Letra.hallaLetraDNI(dni)
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Me.Hide()
        FormMenuUsuarios.Show()
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            If tbApellidos.Text = "" Or tbPassword.Text = "" Or tbCiu.Text = "" Or tbDNI.Text = "" Or tbDomicilio.Text = "" Or tbFechaNac.Text = "DD/MM/AAAA" Or tbNombre.Text = "" Or tbProv.Text = "" Then
                MsgBox("Algún campo vacío, rellénelo.")

            End If
            If tbLetraDni.TextLength = 0 Then
                MsgBox("No ha validado el DNI, inténtelo de nuevo.")
            End If
            If tbApellidos.Text <> "" And tbCiu.Text <> "" And tbDNI.Text <> "" And tbDomicilio.Text <> "" And tbFechaNac.Text <> "DD/MM/AAAA" And tbNombre.Text <> "" And tbProv.Text <> "" And tbLetraDni.TextLength > 0 And tbPassword.Text <> "" Then

                'Si se cumple la condición de que ningún campo esté vacío y se haya validado el dni:
                '1. Limpia el ListBox de usuarios.
                FormMenuUsuarios.lb_usuarios.Items.Clear()

                'Comprobamos si el nombre de usuarios existe
                If buscarNombreEmpleado(tbUsuario.Text) Is Nothing Then
                    MsgBox("El nombre de usuario ya existe. Por favor, elija otro.")
                    tbUsuario.Text = ""
                Else

                    '2. Escribe en el fichero de usuarios.
                    Dim archivo As FileStream = New FileStream("c:/eleemeTPV/empleados.txt", FileMode.Append, FileAccess.Write)
                    Dim sw As New StreamWriter(archivo)
                    Dim p As Integer
                    If cbAdmin.Checked Then
                        p = 1
                    Else
                        p = 0
                    End If
                    sw.WriteLine(vbCrLf & generarCodigo("") & ";" & tbUsuario.Text & ";" & tbNombre.Text & ";" & p & ";" & tbPassword.Text)
                    sw.Close()
                    archivo.Close()
                    '3. Escribe en el fichero de passwords.
                    archivo = New FileStream("c:/eleemeTPV/logueo.txt", FileMode.Append, FileAccess.Write)
                    sw = New StreamWriter(archivo)
                    sw.WriteLine(vbCrLf & tbUsuario.Text & ";" & tbPassword.Text & ";" & p)
                    sw.Close()
                End If
                '4. Se vacían los campos para otro proceso de añadir usuario.

                tbApellidos.Text = ""
                tbCiu.Text = ""
                tbDNI.Text = ""
                tbDomicilio.Text = ""
                tbFechaNac.Text = "DD/MM/AAAA"
                tbNombre.Text = ""
                tbProv.Text = ""
                tbPassword.Text = ""
                tbLetraDni.Text = ""
                '5. Por último vuelve al formulario principal.
                Me.Hide()
                FormMenuUsuarios.Show()

            End If
        Catch ex As Exception
            MsgBox(Err.Description & " Error número:" & Err.Number)
        End Try
    End Sub

End Class